#include<iostream>
#include<string>
#include<algorithm>
using namespace std;

//int main()
//{
//	int num, n;
//	cin >> num >> n;
//	string s1;
//	
//	while (num)
//	{
//		int tmp = num % n;
//		if (tmp < 10)
//			s1.push_back(tmp + '0');
//		else if (tmp == 10)
//			s1.push_back('A');
//		else if (tmp == 11)
//			s1.push_back('B');
//		else if (tmp == 12)
//			s1.push_back('C');
//		else if (tmp == 13)
//			s1.push_back('D');
//		else if (tmp == 14)
//			s1.push_back('E');
//		else if (tmp == 15)
//			s1.push_back('F');
//
//		num /= n;
//	}
//
//	reverse(s1.begin(), s1.end());
//
//	cout << s1;
//}

//bool isreverse(string s)
//{
//	string::iterator begin = s.begin();
//	string::iterator end = s.end() - 1;
//
//	while (begin < end)
//	{
//		if (*begin != *end)
//			return 0;
//
//		++begin;
//		--end;
//	}	return 1;
//}
//
//int main()
//{
//	string s1, s2;
//	cin >> s1 >> s2;
//	int count = 0;
//
//	string::iterator it = s1.begin();
//	while (it != s1.end())
//	{
//		string tmp(s1.begin(),it);
//		tmp += s2;
//		tmp.append(it, s1.end());
//		if (isreverse(tmp))
//			count++;
//		++it;
//	}
//	cout << count;
//}

//#include<vector>
//
//int main()
//{
//	int n, num;
//	vector<int> v;
//	cin >> n;
//	for (int i = 0; i < n; i++)
//	{
//		cin >> num;
//		v.push_back(num);
//	}
//
//	int ret = INT_MIN, sum = v[0];
//	for (int i = 1; i < n; i++)
//	{
//		if (sum < 0)
//		{
//			sum = v[i];
//		}
//		else
//		{
//			sum += v[i];
//		}
//		ret = max(ret, sum);
//	}
//	cout << ret;
//}


//class Solution {
//public:
//    int StrToInt(string str) {
//        string::iterator cur = str.begin();
//        long long num = 0;
//        int flag = 1;
//        if (*cur == '-')
//            flag = -1;
//        if (*cur == '-' || *cur == '+')
//            cur++;
//        while (cur != str.end())
//        {
//            if (*cur >= '0' && *cur <= '9')
//            {
//                num *= 10;
//                num += *cur - '0';
//            }
//            else 
//                return 0;
//            ++cur;
//        }
//        return num * flag;
//    }
//};
//
//int main()
//{
//    Solution s1;
//    string s("-123456");
//    cout << s1.StrToInt(s);
//
//    return 0;
//}

//int main()
//{
//	int row, col, s, ret;
//	cin >> row >> col;
//
//	if (row % 4 == 0 || col % 4 == 0)
//	{
//		s = row * col;
//		ret = s / 2;
//	}
//
//	else if (row % 2 == 0 && col % 2 == 0)
//	{
//		s = row * col / 4;
//		ret = (s + 1) / 2;
//		ret *= 4;
//	}
//
//	else if (row % 2 == 0 || col % 2 == 0)
//	{
//		s = (row * col * 2) / 4;
//		ret = (s + 1);
//	}
//
//	else
//	{
//		s = (row * 2) * (col * 2) / 4;
//		ret = (s + 1) / 2;
//	}
//	cout << ret;
//}

